A project is a planned undertaking of specific tasks in order to accomplish a particular goal. The discipline of project management involves managing the available resources so that the project is completed in a timely fashion. Project management is typically used when a project comprises many separate tasks and resources, and thus becomes complex. In order for the management of a project to be successful, it is usually important to be able to accurately predict the timing and completion of the project.
The management of a project is generally bounded by three constraints: scope, time, and cost. These constraints are usually incorporated in the development of a project schedule. The project schedule is a plan that assigns the available resources to perform the required project tasks during specific time periods. The project schedule allows the calculation of planned completion times for critical tasks, as well as for the planned completion time for the project as a whole. The important points in the progress of the project, such as the completion of certain critical tasks, are known as project milestones. The accurate prediction of these milestones, including the project completion, is vital to the successful management of a project.
Typically, a project schedule is initially developed by identifying each project task, estimating the task durations, and assigning a resource to complete each task. Once the project begins, the project schedule is usually only changed when it is explicitly modified by a project manager. These changes are typically made on one task at a time, and involve adding new tasks, removing canceled tasks, changes to task duration, and changes to task dependencies. In projects with large numbers of tasks, the process of updating the schedule can be very time consuming and difficult. Thus, the changes that are made to the schedule are usually done on an ad-hoc basis, and are only made when there is a specific requirement for the change.
In addition, it is common in the management of projects that tasks that were not initially identified in the schedule are discovered during the course of the project. Obviously, this additional work can only be incorporated into the schedule after it has been discovered. This problem results in difficulty in planning the project and in accurately estimating the project completion date.
The fact that project schedules are subject to change means that the project manager will often have to reevaluate the resources allocated to a project. In order to perform this analysis, it can be beneficial to calculate the earliest possible completion time of the project as a baseline for comparison. However, in the prior art, the calculation of the earliest possible completion typically does not reflect the performance of the project resources.
Therefore, there is a need in the art for an automated method of correcting the remaining portion of a project schedule to reflect the actual performance to date. In addition, there is a need in the art to predict the amount of new work that will be discovered during the remaining portion of a project schedule. Finally, there is a need in the art to determine the earliest possible completion time of a project based on the performance of the project resources.